
VMware Snapshot‘ları, vSphere yöneticilerine sanal makinelerin belirli bir zaman dilimindeki durumlarını anlık olarak kaydetme yeteneği sunar. Bu özellik, geliştirme ve test süreçlerinde değişiklikleri geri almak ve kritik verileri korumak için oldukça faydalıdır. Bu makalede, VMware Snapshot‘larının nasıl yönetileceğini ve vSphere ortamında bu özelliğin etkili kullanımı için en iyi yöntemleri inceleyeceğiz.
İçindekiler
VMware Snapshot Nedir?
“Snapshot” kavramı genellikle bir kamerayla çekilmiş anlık bir fotoğrafı çağrıştırır; yani belirli bir anda yakalanan bir görüntü. VMware Snapshot işlevi de benzer bir mantıkla çalışır: Çalışan bir sanal makinenin tam o anda, bellek içeriği ve sanal makine ayarları dahil olmak üzere tüm durumunu kaydeder. Bu özellik, özellikle sistem güncellemeleri veya yeni yazılım kurulumları gibi kritik işlemler öncesi için mükemmeldir.
VMware Snapshot Avantajları
VMware Snapshot‘lar, geliştirme ve test ortamlarında özellikle yararlıdır. Çeşitli kullanım senaryoları için ideal olan bu özellik, hızlı geri yükleme imkanı sunarak iş sürekliliğini destekler. İşte bazı yaygın kullanım örnekleri:
- Kod Değişiklikleri: Geliştirme sunucularına yeni kod dağıtımı.
- İşletim Sistemi Güncellemeleri: Önemli güncellemelerin yüklenmesi.
- Sürücü Güncellemeleri: Donanım sürücülerinin güncellenmesi veya yükseltilmesi.
- Yazılım Yükseltmeleri: Kurulu yazılımların yeni sürümlerine geçiş.
- Yeni Yazılım Kurulumları: Sunuculara yeni uygulamaların eklenmesi.
- Adli Tıp: Şüpheli veya zararlı faaliyetlerden sonra sistem durumunun kaydedilmesi.
- Güç Durumu: Snapshot alındığında sanal makinenin güç durumunun korunması.
- VM Ayarları ve Donanım Yakalama: Çok sayıda ayar değişikliği yapıldığında geri dönüş için bir güvenlik ağı sağlar.
VMware Snapshot Mimarisi
VMware Snapshot‘larının altyapısı, sanal makinelerde yapılan değişiklikleri geri almayı mümkün kılan bir dizi dosyadan oluşur:
- .vmdk ve -delta.vmdk: Bu dosyalar, anlık görüntülerin ve yapılan veri değişikliklerinin geri alınmasını sağlar. Snapshot’lar birbirlerinin üzerine oluşturulabilir, bu da değişiklikleri içeren bir anlık görüntü zinciri oluşturur.
- .vmsd: VMware snapshot bilgilerini içeren ve snapshot ile ilişkili diskler arasındaki bağlantıları tanımlayan bir tür veritabanı dosyasıdır.
- Snapshot.vmsn: Bu dosya, sanal makinenin aktif bellek durumunu kaydeder ve açık durumda olan bir VM‘nin anlık görüntüsünü almanızı sağlar. Bellek durumu kaydedildiğinde, bu işlem bellek kaydedilmeden yapılandan daha uzun sürer.
VMware Snapshot‘ları, sanal ortamlarınızı yönetirken esneklik ve güvenlik sağlar. Ancak, performansı ve depolama alanını etkileyebileceği için anlık görüntü kullanımını iyi planlamak gerekmektedir.

VMware Snapshot İçin En İyi Uygulamalar
VMware Snapshot’lar, birçok faydalı özellik sunmasına rağmen, her durumda veya her kullanım örneği için uygun olmayabilir. İşte VMware Snapshot‘ları kullanırken göz önünde bulundurmanız gereken bazı önemli uygulamalar:
- Snapshot’ları Yedek Olarak Kullanmamak:
- VMware tarafından da vurgulandığı üzere, Snapshot’lar verilerinizin tam bir kopyası olarak düşünülmemelidir. Bunlar, VM’nin temel disklerine bağlıdır ve bu diskler olmadan işlevsizdir. “Delta” diskleri tam bir veri seti sağlamaz.
- Snapshot Sayısı:
- Bir sanal makinede desteklenen en fazla 32 Snapshot vardır, ancak performansı optimize etmek için genellikle en fazla 2 veya 3 Snapshot kullanılması önerilir. Fazla sayıda Snapshot, sistemin performansını önemli ölçüde düşürebilir.
- Snapshot Süresi:
- Snapshot’lar, 72 saatten fazla süreyle aktif bırakılmamalıdır. Uzun süre sahipsiz bırakılan Snapshot’lar büyümeye devam eder ve potansiyel olarak depolama alanını doldurabilir.
- Snapshot ve Veri Koruma:
- Veri koruma çözümleri, yedekleme yinelemesi tamamlanana kadar Snapshot’ları kullanabilir. Yedekleme işlemi tamamlandıktan sonra, Snapshot’ların sanal makineden düzgün bir şekilde temizlenmesi önemlidir.
- Sanal Disk Değişikliklerini Engelleme:
- Aktif bir Snapshot varken, sanal disklerde yapılan herhangi bir değişiklik engellenir. Bu, sanal diskin boyutunun genişletilmesini de içerir.
PowerCLI ile Çalışan Snapshot Dosyalarını Bulma
PowerCLI, VMware vSphere‘deki aktif Snapshot‘ları yönetmek için güçlü bir araçtır. Tek bir VM’deki veya birden fazla VM’deki tüm aktif Snapshot’ları bulmak için aşağıdaki komutlar kullanılabilir:
get-vm <vm name> | get-snapshot
Belirli bir klasördeki tüm VM’ler için:
get-vm -location <folder name> | get-snapshot | fl
vSphere İstemcisi ile Snapshot Oluşturma İşlemi
VMware vSphere Client GUI’si veya PowerCLI kullanarak Snapshot oluşturma işlemi kolaylıkla gerçekleştirilebilir. vSphere İstemcisini kullanarak bir sanal makineye sağ tıklayıp “Snapshot > Take Snapshot” seçeneği ile kolayca bir anlık görüntü alabilirsiniz.
Bu en iyi uygulamalar ve yönergeler, VMware Snapshot’larınızı daha etkin bir şekilde yönetmenize yardımcı olacak ve sanal ortamınızda gereksiz yere kaynak tüketimini önleyecektir.

Snapshot alırken karşınıza çıkacak diğer seçenekler şunlardır:
- VM Belleğini Dahil Et: Bu seçenek, sanal makinenin bellek durumunu da Snapshot’a dahil eder. Aktif uygulamaların ve işlemlerin tam olarak o anki durumlarını yakalar, böylece Snapshot geri yüklendiğinde sanal makine aynı çalışma durumunda devam eder. Bellek Snapshot’ı, özellikle dinamik veri işleyen uygulamalar için önemli olabilir.
- Sessiz Konuk Dosya Sistemi (VM Araçları Gerektirir): Bu seçenek, sanal makinenin dosya sistemini “sessize alır”. Sessize alma işlemi, sanal makinenin dosya sisteminin, yedekleme işlemleri sırasında dosyaların tutarlılığını koruyacak şekilde düzenlenmesini sağlar. Bu işlem, genellikle veritabanları gibi sürekli değişen verileri barındıran uygulamalar için kritik öneme sahiptir. Sessize alınmış bir dosya sistemi, yedeklemenin güvenilir ve konsisten olmasını sağlar.
Bu seçenekler, Snapshot alırken sanal makinenizin ihtiyaçlarına ve iş yüküne bağlı olarak değerlendirilmelidir.
Örneğin, işlem yoğun bir uygulama çalıştırıyorsanız ve tam bir geri yükleme gerektiğinde uygulamanın hızla devam etmesini istiyorsanız, “VM Belleğini Dahil Et” seçeneğini aktif etmek iyi bir tercih olabilir. Yedekleme amaçlı kullanımlarda ise, “Sessiz Konuk Dosya Sistemi” seçeneğinin etkinleştirilmesi önerilir.

PowerCLI ile VMware Snapshot Alma
vSphere Client GUI, geçici veya tek seferlik VMware Snapshot’lar oluşturmak için mükemmel bir araçtır ve bireysel sanal makineler için idealdir. Ancak, birden fazla sanal makinede toplu olarak Snapshot almak istediğinizde, PowerCLI bu süreci büyük ölçüde kolaylaştırır. PowerCLI, vSphere ortamınızla etkileşim kurmanızı sağlayarak anlık görüntü yönetimini basitleştirir.
Tekil ve Çoklu Sanal Makine için Snapshot Alma
Tek bir sanal makine için Snapshot almak için aşağıdaki PowerCLI komutunu kullanabilirsiniz:
get-vm <vm name> | new-snapshot -Memory -quiesce -name "testSnapshot"
Birden fazla sanal makinede toplu olarak Snapshot oluşturmak istiyorsanız, belirli bir klasördeki tüm VM’ler için aşağıdaki komutu kullanabilirsiniz:
get-vm -location "folderName" | new-snapshot -Memory -quiesce -name "batchSnapshot"
Bu komutlar, iş yükünüzü ve operasyonel gereksinimlerinizi destekleyecek şekilde çok sayıda sanal makinede anlık görüntüler oluşturmanızı sağlar.
Snapshot Yönetimi, Geri Yükleme ve Silme
PowerCLI ayrıca Snapshot‘ları yönetme, geri yükleme ve silme işlemleri için de kullanılabilir. Sanal makinelerdeki tüm Snapshot‘ları görüntülemek ve yönetmek için aşağıdaki komut kullanılabilir:
get-vm <vm name> | get-snapshot | select Name, Created, SizeMB
Bir sanal makinedeki en son Snapshot’a geri dönmek için:
get-vm <vm name> | get-snapshot | sort Created -Descending | select -First 1 | set-vm -confirm:$false
Tüm Snapshot’ları silmek ve sanal makineyi orijinal durumuna getirmek için:
get-vm <vm name> | get-snapshot | remove-snapshot -confirm:$false
Bu işlemler, VMware ortamınızda verimli bir kaynak yönetimi sağlar ve gerekli olduğunda hızlı bir şekilde geri yükleme yapmanıza olanak tanır.
vSphere Client GUI ile Snapshot Oluşturma
vSphere Client GUI, sanal makinelerinizde bulunan VMware Snapshot‘ları yönetmek için sezgisel bir arayüz sağlar. Bir sanal makineye sağ tıklayıp “Snapshot > Take Snapshot” seçeneğini seçerek kolayca bir anlık görüntü oluşturabilirsiniz. Bu arayüz, Snapshot’ları görsel olarak yönetmek isteyen kullanıcılar için yararlıdır.
PowerCLI ve vSphere Client GUI, VMware ortamınızda esnek ve güçlü Snapshot yönetimi için iki temel araçtır, ve her biri farklı ihtiyaçlara hizmet ederken, toplu işlemler ve otomasyon için PowerCLI özellikle değerlidir.

PowerCLI ile Belirli Bir Snapshot’ı Birden Çok Sanal Makineden Silme
VMware ortamınızda birden fazla sanal makinede bulunan belirli bir Snapshot’ı silmek, özellikle düzenli bakım ve kaynak yönetimi için önemli olabilir. Aşağıda, belirli bir klasörde bulunan tüm VM’lerden belirli bir Snapshot adına göre Snapshot’ları silmek için kullanabileceğiniz PowerCLI komut dosyası örneği verilmiştir:
$vms = Get-VM -Location "folderName"
$snapshotName = "MySnapshotName"
foreach ($vm in $vms) {
$snapshot = Get-Snapshot -VM $vm -Name $snapshotName
Remove-Snapshot -Snapshot $snapshot -RunAsync -Confirm:$false
}
Bu script, belirtilen klasördeki tüm sanal makineleri döngüye alır, her bir VM için belirtilen adı taşıyan Snapshot’ı bulur ve onu siler. -RunAsync
parametresi, işlemin asenkron olarak gerçekleşmesini sağlar, böylece komut, bir sonraki sanal makineye geçmeden önce önceki işlemin tamamlanmasını beklemek zorunda kalmaz.
Snapshot Silme Sırasında Dikkat Edilmesi Gereken Noktalar
VMware vSphere’de bir Snapshot’ı kaldırırken dikkat edilmesi gereken önemli noktalar:
- Diğer Sanal Makine İşlemleri:
- Snapshot silme işlemi sırasında, sanal makinede başka bir işlem gerçekleştiremezsiniz. Bu, sanal makinenin diğer yönetim ve bakım işlemlerine kapalı olduğu anlamına gelir.
- Konsolidasyon Süreci:
- Büyük bir Snapshot silinirken, delta diskinin temel diske birleştirilmesi süreci gerçekleşir. Bu süreç tamamlanana kadar sanal makine yanıt vermeyebilir, çünkü “stun/freeze” (donma) işlemi gerçekleşir.
- Stun/Freeze Süreleri:
- Delta disklerden temel diske yazılan değişiklikler nedeniyle stun/freeze işlemi gerçekleşir. Yoğun I/O işlemleri altındaki VM’lerde konsolidasyon süreleri uzayabilir ve stun süreleri artabilir. ESXi, stun süresinin 15 saniyeden fazla sürmesi durumunda, süreci 10 yineleme boyunca denemeye devam eder. 10. yinelemede başarısız olursa, işlemi durdurur ve Snapshot silinemez.
Bu bilgiler, VMware ortamınızda Snapshot yönetimi sırasında karşılaşabileceğiniz durumları ve potansiyel zorlukları anlamanıza yardımcı olabilir. PowerCLI scriptlerini kullanarak Snapshot yönetimi sürecinizi otomatize etmek, zaman kazandırır ve hata oranını azaltır.